import type { ComponentPropsWithoutRef, FC } from 'react'
import { useId } from 'react'

type Props = ComponentPropsWithoutRef<'svg'>

export const PMAgent: FC<Props> = (props) => {
  const clipPathId = useId()

  return (
    <svg
      role="img"
      aria-label="PM Agent Avatar"
      width={24}
      height={24}
      viewBox="0 0 24 24"
      fill="none"
      {...props}
    >
      <g clipPath={`url(#${clipPathId})`}>
        <path
          d="M0 12C0 5.37258 5.37258 0 12 0V0C18.6274 0 24 5.37258 24 12V12C24 18.6274 18.6274 24 12 24V24C5.37258 24 0 18.6274 0 12V12Z"
          fill="#4870FF"
        />
        <rect
          x="5.57153"
          y="11.5715"
          width="12.8571"
          height="7.28572"
          fill="black"
        />
        <path
          d="M23.6714 22.0124C23.2986 21.2842 22.3299 21.1654 21.9383 20.4852C21.743 20.1522 21.6997 19.6576 21.6725 19.2354C21.5185 16.9213 20.9274 14.6421 19.883 12.5708C19.5828 11.9292 19.2914 11.2365 19.4564 10.5282C19.5734 9.98096 19.871 9.43161 19.871 8.87445C19.8767 8.02594 19.0418 7.65276 18.2496 7.7226C17.7828 7.75231 17.3322 7.94723 16.9306 8.17656C15.4335 9.16789 14.7202 8.43821 13.0848 8.24432C12.0592 8.12184 11.0274 8.16405 10.0154 8.40954C9.48489 8.53254 8.88073 8.72851 8.35595 8.68578C7.67189 8.63522 7.19619 8.18073 6.54608 7.91596C6.07455 7.71947 5.52836 7.65171 5.03385 7.78566C4.47721 7.92222 4.07096 8.39338 4.13362 8.97921C4.17435 9.63697 4.60201 10.2942 4.59314 10.9738C4.58687 11.5352 4.35241 12.0689 4.11378 12.5812C3.8694 13.0941 3.61562 13.6127 3.41824 14.1422C2.78431 15.8804 2.40208 17.7005 2.30391 19.5518C2.18694 21.6115 0.381777 20.7641 0.0522831 22.8395C-0.48817 26.3545 3.28874 25.1948 5.50538 23.552C5.80772 23.3628 6.16228 23.0928 6.48185 23.2346C7.29332 23.7177 7.56119 25.9354 8.75646 26.1345C10.24 26.2857 10.854 24.1686 11.9501 24.0716C12.8555 24.0586 13.4122 25.347 14.1532 25.803C14.8529 26.3055 15.5719 26.2768 16.0795 25.5424C16.4356 25.0671 16.7071 24.389 16.9891 23.8699C17.2935 23.3174 17.5442 23.024 18.0773 23.3013C18.4214 23.478 18.7901 23.7652 19.1379 23.9788C20.7597 24.9493 22.7874 25.7442 23.7184 24.5584C24.1335 23.9106 24.0646 22.7415 23.6756 22.0217L23.6704 22.0129L23.6714 22.0124ZM7.01082 15.0423C7.00037 14.5279 7.4437 14.0833 7.94604 13.9947C8.87395 13.7988 9.34443 14.7119 8.86768 15.4536C8.33506 16.2979 7.04685 16.0863 7.01082 15.0522V15.0423ZM16.9907 15.0528C16.9546 16.0868 15.6664 16.2984 15.1338 15.4541C14.6571 14.7124 15.1275 13.7993 16.0555 13.9952C16.5578 14.0839 17.0011 14.5279 16.9907 15.0429V15.0528Z"
          fill="#FFD748"
        />
        <path
          d="M19.6669 4.20252C19.8074 4.28363 19.9291 4.39371 20.0233 4.52579L23.1224 8.86898C23.1896 8.95703 23.2295 9.06301 23.2372 9.17354C23.2449 9.28409 23.22 9.39465 23.1656 9.4912C23.1112 9.58765 23.0297 9.66615 22.9312 9.7168C22.8327 9.76746 22.7211 9.78785 22.6109 9.77589L20.3941 9.55831L20.4862 9.58144L19.4948 11.2985C19.2694 11.6889 18.743 11.8839 18.0316 11.8412C17.3203 11.7985 16.4821 11.5215 15.7015 11.0708C14.9209 10.6201 14.2619 10.0327 13.8693 9.43807C13.4766 8.84334 13.3823 8.28992 13.6077 7.89958L14.599 6.18251L13.3806 4.44036C13.3154 4.35172 13.2776 4.24575 13.2715 4.1359C13.2654 4.02603 13.2913 3.9167 13.3464 3.82141C13.4014 3.72612 13.4831 3.649 13.5813 3.59931C13.6795 3.54966 13.7901 3.52945 13.8995 3.54158L19.2088 4.05556C19.3703 4.07106 19.5264 4.12142 19.6669 4.20252Z"
          fill="#F75049"
        />
        <path
          d="M19.8549 3.87709C20.0419 3.98508 20.2036 4.13193 20.329 4.30779L23.428 8.65099L23.4276 8.65075C23.5351 8.79528 23.5993 8.96744 23.6119 9.14731C23.6247 9.33118 23.5832 9.51482 23.4927 9.67539C23.4023 9.83589 23.2667 9.96626 23.1028 10.0505C22.94 10.1342 22.7564 10.1681 22.5744 10.1491L17.2561 9.62924L17.2559 9.62857C17.0413 9.60784 16.8335 9.54166 16.6467 9.43382C16.4597 9.32584 16.298 9.17897 16.1726 9.00312L13.075 4.65847L13.0752 4.65805C12.9688 4.51155 12.9066 4.33766 12.8965 4.15678C12.8864 3.97398 12.9297 3.79219 13.0213 3.63364C13.1128 3.4751 13.2486 3.34667 13.412 3.26405C13.5549 3.19177 13.7136 3.15706 13.8729 3.16311L13.9416 3.16832L19.2449 3.68185L19.3249 3.69191C19.5113 3.71995 19.6912 3.78257 19.8549 3.87709ZM13.6718 4.0092C13.6532 4.04133 13.6445 4.07844 13.6466 4.11548C13.6481 4.1432 13.6558 4.17006 13.6688 4.19437L13.6833 4.21803L13.6866 4.22217L16.7842 8.56682C16.8472 8.65514 16.9284 8.7291 17.0223 8.78333C17.1162 8.83754 17.2209 8.8709 17.3288 8.88126L17.3293 8.8815L22.6477 9.40207L22.6514 9.40251C22.6885 9.40654 22.7263 9.39957 22.7595 9.38249C22.7926 9.36544 22.82 9.33905 22.8383 9.3066C22.8567 9.27406 22.8651 9.23643 22.8625 9.19917C22.8599 9.16202 22.8466 9.12633 22.824 9.09673C22.8215 9.09349 22.8191 9.09019 22.8167 9.08687L19.7174 4.74409C19.6545 4.65579 19.5733 4.58181 19.4793 4.52758C19.409 4.48695 19.3326 4.45804 19.2534 4.44172L19.1728 4.42966L13.8636 3.91556L13.8584 3.9148C13.8216 3.91071 13.7843 3.91755 13.7512 3.93422C13.7181 3.95097 13.6903 3.97707 13.6718 4.0092Z"
          fill="#800020"
        />
        <path
          d="M21.1319 12.2438L22.8315 9.3001C22.9352 9.12047 23.1649 9.05893 23.3445 9.16264C23.5242 9.26634 23.5857 9.49604 23.482 9.67566L21.7824 12.6194C21.6787 12.7989 21.449 12.8605 21.2694 12.7569C21.0898 12.6532 21.0284 12.4234 21.1319 12.2438Z"
          fill="#800020"
        />
        <path
          d="M13.2824 7.7113L14.2736 5.99444C14.3774 5.81481 14.607 5.75326 14.7867 5.85697C14.9663 5.96068 15.0278 6.19037 14.9241 6.37L13.9329 8.08687C13.8147 8.29161 13.8182 8.67953 14.1821 9.23078C14.5353 9.76569 15.1461 10.3164 15.8893 10.7455C16.6324 11.1745 17.4144 11.4279 18.0542 11.4663C18.7136 11.5059 19.0513 11.315 19.1695 11.1102L20.1607 9.39333C20.2644 9.21372 20.4941 9.1522 20.6737 9.25587C20.8534 9.35958 20.9149 9.58927 20.8112 9.7689L19.82 11.4858C19.4875 12.0617 18.7725 12.262 18.0092 12.2162C17.2263 12.1692 16.3318 11.8683 15.5137 11.396C14.6956 10.9236 13.9874 10.2992 13.5552 9.6447C13.1339 9.00657 12.9499 8.2872 13.2824 7.7113Z"
          fill="#800020"
        />
      </g>
      <defs>
        <clipPath id={clipPathId}>
          <path
            d="M0 12C0 5.37258 5.37258 0 12 0V0C18.6274 0 24 5.37258 24 12V12C24 18.6274 18.6274 24 12 24V24C5.37258 24 0 18.6274 0 12V12Z"
            fill="white"
          />
        </clipPath>
      </defs>
    </svg>
  )
}
